<?php

class documentosActions extends sfActions {
        /* envia los datos de la tabla  EVENTOS  paginados en en una cantidad determinada */
    public function executeIndex(sfWebRequest $request){

        $c = new Criteria();
        $c->addAscendingOrderByColumn(DocumentosPeer::NUMORDEN);

        // PA MAYOr EXPLICACION IR A   http://www.enmanosdenadie.com.ar/2009/06/symfony-paginacion-con-sfpropelpager/
        //sfPropelPayer('mensaje','cantidad de elemtos x pagina')
        $pager = new sfPropelPager('documentos', sfConfig::get('app_max_per_page'));
        $pager->setCriteria($c);
        $pager->setPage($request->getParameter('page', 1));//setea la pagina en 1
        //preparala informacion para usarla en la vista
        $pager->init();
        $this->pager = $pager;
    }

    public function executeNew(sfWebRequest $request){

    }

    function extension($filename)
    {
            return substr(strrchr($filename, '.'), 1);
     }


    public function executeNew_save(sfWebRequest $request){

        $titulo = $request->getParameter('titulo');
        $autor = $request->getParameter('autor');
        $numero = $request->getParameter('numero');
        $fecha=$request->getParameter('date');

        $pdf = $_FILES["pdf"]["tmp_name"];



        $documentos = new Documentos();
        $documentos->setTitulo($titulo);
        $documentos->setAutor($autor);
        $documentos->setNumorden($numero);
        $documentos->setCreatedAt(date("Y-m-d H:i:s"));
        $documentos->setFechapublicacion($fecha);

        $nombreCompleto = $_FILES["pdf"]["name"];
        $arreglo = explode(".", strtolower($_FILES['pdf']['name']));
        $nombre = $arreglo[0];
        $extension = $arreglo[1];

        $documentos->setFilename($documentos->getId()."-".$nombreCompleto);
        $documentos->setContenido($documentos->getId()."-".$nombre);
        $documentos->save();

        if($pdf!=''){
            $DS = DIRECTORY_SEPARATOR;
            move_uploaded_file($pdf, sfConfig::get('sf_upload_dir').$DS."documentos".$DS.$documentos->getFilename());
        }

        $this->getUser()->setFlash('msg','Documentos creado satisfactoriamente');
        $this->redirect('@documentos');
    }

    public function executeEdit(sfWebRequest $request){

        $id=$request->getParameter('id');
        $this->documentos = DocumentosPeer::retrieveByPK($id);
       


    }

    public function executeEdit_save(sfWebRequest $request){

        $id = $request->getParameter('id');
        $titulo = $request->getParameter('titulo');
        $autor = $request->getParameter('autor');
        $numero = $request->getParameter('numero');
        $fecha=$request->getParameter('date');

        $pdf = $_FILES["pdf"]["tmp_name"];

        $documentos = DocumentosPeer::retrieveByPK($id);
        $documentos->setTitulo($titulo);
        $documentos->setAutor($autor);
        $documentos->setNumorden($numero);
        $documentos->setFechapublicacion($fecha);

        $nombreCompleto = $_FILES["pdf"]["name"];
        $arreglo = explode(".", strtolower($_FILES['pdf']['name']));
        $nombre = $arreglo[0];
        $extension = $arreglo[1];

        $documentos->setFilename($documentos->getId()."-".$nombreCompleto);
        $documentos->setContenido($documentos->getId()."-".$nombre);
        $documentos->save();

        if($pdf!=''){
            $DS = DIRECTORY_SEPARATOR;
            move_uploaded_file($pdf, sfConfig::get('sf_upload_dir').$DS."documentos".$DS.$documentos->getFilename());
        }

        $this->getUser()->setFlash('msg','Documentos modificado satisfactoriamente');
        $this->redirect('@documentos');
    }



    public function executeDelete(sfWebRequest $request){
        $id = $request->getParameter('id');
        $eliminar=new Criteria();
        $eliminar->add(DocumentosPeer::ID,$id);
        $obj=DocumentosPeer::doSelectOne($eliminar);

        if(is_object($obj))
        {
           $obj->delete();
        }
        $this->getUser()->setFlash('msg','Documentos eliminado satisfactoriamente');
        $this->redirect('@documentos');


   /*     $event = DocumentosPeer::retrieveByPK($id);//busca x llave primaria , es lo mismo que hacer el doselectone
        $event->setEnabled(0);
        $event->save();*/

       
    }

}